﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Data;
using System.Linq;
using System.Text;

namespace RogerioCoimbra.DivulgacaoEspirita.Dominio.Entidade
{
	/// <summary>
	/// Parte da classe aviso.
	/// </summary>
	[MetadataType(typeof(Metadata.AvisoMetadata))]
	public partial class Aviso : IEntidadeConteudo, IEntidadeBase
	{
		#region IEntidadeBase Members
		/// <summary>
		/// Preencher dados Auxiliares.
		/// </summary>
		/// <param name="usuarioLogado"></param>
		void IEntidadeBase.PreencherDadosAuxiliares(Usuario usuarioLogado)
		{
			DateTime dataAtual = DateTime.Now;

			switch (EntityState)
			{
				case EntityState.Added:

					DataCriacao = dataAtual;
					UsuarioCriacao = usuarioLogado;

					break;

				case EntityState.Modified:

					DataUltimaAlteracao = dataAtual;

					if (UsuarioUltimaAlteracao == null || UsuarioUltimaAlteracao.Login != usuarioLogado.Login)
						UsuarioUltimaAlteracao = usuarioLogado;

					break;
			}
		}
		#endregion
	}
}
